package com.atguigu.srb.core.service;

import com.atguigu.srb.core.pojo.dto.ExcelDictDTO;
import com.atguigu.srb.core.pojo.entity.Dict;
import com.baomidou.mybatisplus.extension.service.IService;

import java.io.InputStream;
import java.util.List;

/**
 * <p>
 * 数据字典 服务类
 * </p>
 *
 * @author gcq
 * @since 2021-04-11
 */
public interface DictService extends IService<Dict> {
    /**
     * 上传Excel文件
     * @param inputStream
     * */
    void importData(InputStream inputStream);

    /**
     * 查询出全部的字典数据，并封装成DTO返回
     * @return dto
     */
    List<ExcelDictDTO> listDictData();

    /**
     * 根据上级Id查询出子节点数据列表
     * @param parentId 上级节点Id
     * @return 子节点数据列表
     */
    List<Dict> listByParentId(Long parentId);

    /**
     * 根据dictCode获取对应字典数据
     * @param dictCode
     * @return
     */
    List<Dict> findByDictCode(String dictCode);

    /**
     * 根据dictCode和Value查询字典名称
     * @param dictCode 值
     * @param value 编码
     * @return
     */
    String getNameByParentDictCodeAndValue(String dictCode, Integer value);
}
